Tree *AllocateTree (int numTaxa, int isTreeRooted);
int	  DerootTree (Tree *t, int outgroup);
int   DoMcmc (void);
int   DoBootstrap (void); //Added by BCO: is basically DoMCMC duplicated for multiple bootstrap runs
int   DoMcmcp (void);
int   DoMcmcParm (char *parmName, char *tkn);
int   DoReassemble (void);
int   DoReassembleParm (char *parmName, char *tkn);
void  FreeTree (Tree *t);
void  GetDownPass (Tree *t);
int	  MoveCalculationRoot (Tree *t, int outgroup);
FILE *OpenNewMBPrintFile (char *fileName);
int	  RootTree (Tree *t);
void  SetBit (int i, long *bits);
void  SetUpMoveTypes (void);
int   numberoffreeparams; //Added by BCO: used to figure out how many params there are to calculate AICc score. 
						  //The way this is done is by looking at the available moves: only free parameters are
						  //moved, and you can tell how many free parameters there are for certain types of moves
						  //(revmat->5 params, for example)
